From 625f73d3df3a60be6d3fccc5a83d59f6b68ed2f3 Mon Sep 17 00:00:00 2001 From: Alex Williamson Date: Fri, 11 May 2007 13:09:12 -0600 Subject: [PATCH] [IA64] Fix allocate_rid_range() Though there is a free ridblock_owner[], allocate_rid_range() cannot allocate it. Signed-off-by: Masaki Kanno --- xen/arch/ia64/xen/regionreg.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/xen/arch/ia64/xen/regionreg.c b/xen/arch/ia64/xen/regionreg.c index 4b64bd9968..c83a91a862 100644 --- a/xen/arch/ia64/xen/regionreg.c +++ b/xen/arch/ia64/xen/regionreg.c @@ -157,9 +157,12 @@ int allocate_rid_range(struct domain *d, unsigned long ridbits) for (i = n_rid_blocks; i < MAX_RID_BLOCKS; i += n_rid_blocks) { if (ridblock_owner[i] == NULL) { for (j = i; j < i + n_rid_blocks; ++j) { - if (ridblock_owner[j]) + if (ridblock_owner[j]) { + ++j; break; + } } + --j; if (ridblock_owner[j] == NULL) break; } -- 2.30.2